#!/bin/bash
# parameter 1: process name

process=$1
retry_count=20
pids=($(pidof $process))
echo "list pids " ${pids[@]}

if [ ${#pids[@]} == 0 ]; then
	exit 0
fi

pid=${pids[$RANDOM % ${#pids[@]}]}

echo "kill pid $pid"
kill $pid

counter=0
while [ $counter -lt $retry_count ]; do
	ps -p $pid >/dev/null 2>&1
	ret=$?
	if [ "$ret" != "0" ]; then
		echo "process $pid already exit"
		exit 0
	fi
	((counter += 1))
	sleep 0.5
	echo "wait process $pid exit for $counter-th time..."
done

echo "wait process $pid exit timeout"
exit 1
